.site-header,
.navbar,
body,
footer {
    /* Google Fonts */
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-style: normal;
    font-weight: 900;
}

.navbar,
.headroom--not-top .navbar {
    background-color: #F5EBDC;
}

.nav,
.navbar-toggle {
    color: #502314;
}

.navbar-toggle .icon-bar {
    background: #502314;
}

.navbar a {
    font-size: 12px;
    font-weight: 900;
    /* padding: 0px 5px; */
}

.navbar a:hover {
    color: #D62300;
}

body {
    font-size: 15px;
    color: #502314;
    background-color: #F5EBDC;
    padding: 0px 20px;
}

footer {
    background-color: #FFFCF8;
    color: #502314;
}

.custom-logo {
    height: 16px;
}

.caution {
    color: #D62300;
}

.page_home {
    width: 100%;
    height: auto;
    gap: 8px;
}

/* flex box
+---+---+---+
|   |   |   |
+---+---+   |
|       |   |
+-------+---+
*/
.flexbox {
    display: flex;
    gap: 8px;
}

.box {
    box-sizing: border-box;
    background: #ffffff;
    border: 1px solid white;
    border-radius: 20px;
    justify-content: start;
    text-align: left;
    padding: 20px;
}

/* top
+-----+-----+
|  1  |  2  |
+---+-+-+---+
| 3 | 4 | 5 |
+---+---+---+
*/
.page_home_top_1_2 {
    background-color: #e8dcc8;
    border-radius: 20px;
}

.page_home_top1 {
    width: 40%;
    justify-content: center;
    align-items: end;
}

.page_home_img0001 {
    width: 315px;
    height: 394px;
}

.page_home_top2 {
    width: 60%;
    font-size: 25px;
}

.page_home_top2_r2 {
    display: flex;
    gap: 8px;
    text-align: start;
    margin: 16px auto;
    justify-content: center;
    text-align: center;
}

.page_home_top2_r2 p {
    flex: 1;
}

.page_home_img0002 {
    width: 104px;
    height: 104px;

}

.page_home_img0003,
.page_home_img0004 {
    width: 171px;
    height: 48px;
}

.page_home_img0005 {
    width: 171px;
    height: 106px;
}

.page_home_top_3_4_5 {
    height: 160px;
    background-color: #ffffff;
    border-radius: 20px;
}

.page_home_top3 {
    justify-content: end;
    text-align: right;
}

.page_home_top4 {
    justify-content: center;
    text-align: center;
}

.page_home_top3,
.page_home_top4 {
    width: 40%;
}

.page_home_top5 {
    width: 20%;
}

.page_home_img0006 {
    width: 160px;
    height: 120px;
}

.page_home_img0007,
.page_home_img0008,
.page_home_img0009,
.page_home_img0010,
.page_home_img0011 {
    width: 40px;
    height: 40px;
}

/* mid
+-----+-----+
|     |  2  |
|  1  +-----+
|     |  3  |
+-----+-----+
*/
.page_home_mid1,
.page_home_mid_2_3 {
    width: calc(100% / 2);
}

.page_home_mid1 {
    height: 648;
}

.page_home_mid2,
.page_home_mid3 {
    height: 320;
}

/* bottom
+---+---+---+
| 1 | 2 | 3 |
+---+---+---+
*/
/*
.page_home_bottom {
    display: flex;
    gap: 8px;
}
*/

.page_home_bottom_1,
.page_home_bottom_2,
.page_home_bottom_3 {
    width: calc(100% / 3);
    height: 320px;
}

.position_right {
    text-align: right;
}

.text-color-red {
    font-size: 30px;
    color: #D62300;
}

.page_home_top2_r1 em {
    font-size: 1.375rem;
    line-height: 1.4;
}

.text-color-brown {
    display: inline-block;
    background-color: #502314;
    /* 茶色の背景 */
    font-size: 15px;
    color: #ffffff;
    /* 白文字 */
    font-weight: bold;
    text-decoration: none;
    padding: 6px 16px 4px;
    /* 上下・左右の余白でボタンサイズが決まる */
    border-radius: 10px;
    /* 角丸の丸み具合（大きいほど丸くなる） */
    text-align: center;
    white-space: nowrap;
    /* テキストが折り返されないように */
    transition: background-color 0.2s ease;
}

.textbox_beige {
    display: inline-block;
    background-color: #FAF4ED;
    /* 茶色の背景 */
    font-size: 15px;
    color: #502314;
    /* 白文字 */
    font-weight: bold;
    text-decoration: none;
    padding: 16px 32px;
    /* 上下・左右の余白でボタンサイズが決まる */
    border-radius: 40px;
    /* 角丸の丸み具合（大きいほど丸くなる） */
    text-align: center;
    white-space: nowrap;
    /* テキストが折り返されないように */
    transition: background-color 0.2s ease;
}